<i-form
    :model="this.data"
    class="app-form"
    ref="form"
    id="story_bugtostory"
    style=""
    @on-validate="formItemValidate.apply(_self, arguments)"
>
    <input style="display:none;">
    <row>
            <i-col
    class="form-layout-container"
    v-show="detailsModel.group1.visible"
    :style="{}"
    
    
    :lg="{ span: 24, offset: 0 }"
    
>
    <app-form-group
    :model="detailsModel.group1"
    layoutType="TABLE_24COL"
    titleStyle=""
    class=""
    :uiActionGroup="detailsModel.group1.uiActionGroup"
    @groupuiactionclick="groupUIActionClick($event)"
    :caption="$t('entities.story.bugtostory_form.details.group1')"
    :isShowCaption="false"
    uiStyle="DEFAULT"
    :titleBarCloseMode="0"
    :isInfoGroupMode="false"

>    
    <app-form-group-data-panel
        slot="dataInfoPanel"
        :model="detailsModel.group1"
        :data="data"
        :context="context"
        :viewparams="viewparams"
    ></app-form-group-data-panel>
    <row>
        <i-col
    class="form-layout-container"
    v-show="detailsModel.prodoctname.visible"
    :style="{}"
    
    
    :lg="{ span: 24, offset: 0 }"
    :xl="{ span: 9, offset: 0 }"
>
    <app-form-item
    name="prodoctname"
    :itemRules="this.rules().prodoctname"
    class=""

    :caption="$t('entities.story.bugtostory_form.details.prodoctname')"
    uiStyle="DEFAULT"
    :labelWidth="100"
    :isShowCaption="true"
    :error="detailsModel.prodoctname.error"
    :isEmptyCaption="false"
    labelPos="LEFT"
>
    
<app-picker  
    :formState="formState"
    :data="data"
    :context="context"
    :viewparams="viewparams"
    :localContext ='{ }' 
    :localParam ='{ }' 
    :disabled="detailsModel.prodoctname.disabled"
    name="prodoctname"
    deMajorField="name"
    deKeyField="product"
    :service="service"
    :acParams="{ serviceName: 'ProductService', interfaceName: 'FetchCurUer'}"
    valueitem="product"
    :value="data.prodoctname"
    editortype="dropdown"
    style=""
    @formitemvaluechange="onFormItemValueChange($event)">
</app-picker>
</app-form-item>

</i-col>
<i-col
    class="form-layout-container"
    v-show="detailsModel.branch.visible"
    :style="{}"
    
    
    :lg="{ span: 24, offset: 0 }"
    :xl="{ span: 3, offset: 0 }"
>
    <app-form-item
    name="branch"
    :itemRules="this.rules().branch"
    class=""

    :caption="$t('entities.story.bugtostory_form.details.branch')"
    uiStyle="DEFAULT"
    :labelWidth="1"
    :isShowCaption="true"
    :error="detailsModel.branch.error"
    :isEmptyCaption="true"
    labelPos="LEFT"
>
    
<dropdown-list 
    v-model="data.branch"
    :data="data"
    :context="context"
    :formState="formState"
    :viewparams="viewparams"
    :localContext='{ PRODUCT:"%product%" }' 
    :localParam='{ product:"%product%" }' 
    :disabled="detailsModel.branch.disabled"
    valueType="number"
    tag="ProductBranch"
    codelistType="DYNAMIC"
    placeholder="请选择..."

></dropdown-list>
</app-form-item>

</i-col>
<i-col
    class="form-layout-container"
    v-show="detailsModel.modulename.visible"
    :style="{}"
    
    
    :lg="{ span: 24, offset: 0 }"
    :xl="{ span: 12, offset: 0 }"
>
    <app-form-item
    name="modulename"
    :itemRules="this.rules().modulename"
    class=""

    :caption="$t('entities.story.bugtostory_form.details.modulename')"
    uiStyle="DEFAULT"
    :labelWidth="75"
    :isShowCaption="true"
    :error="detailsModel.modulename.error"
    :isEmptyCaption="false"
    labelPos="LEFT"
>
    
<app-picker  
    :formState="formState"
    :data="data"
    :context="context"
    :viewparams="viewparams"
    :localContext ='{ PRODUCT:"%product%" }' 
    :localParam ='{ product:"%product%" }' 
    :disabled="detailsModel.modulename.disabled"
    name="modulename"
    deMajorField="name"
    deKeyField="productmodule"
    :service="service"
    :acParams="{ serviceName: 'ProductModuleService', interfaceName: 'FetchStoryModule'}"
    valueitem="module"
    :value="data.modulename"
    editortype="dropdown"
    :valFormat="{0: '/'}"
    style=""
    @formitemvaluechange="onFormItemValueChange($event)">
</app-picker>
</app-form-item>

</i-col>
<i-col
    class="form-layout-container"
    v-show="detailsModel.plan.visible"
    :style="{}"
    
    
    :lg="{ span: 24, offset: 0 }"
    :xl="{ span: 12, offset: 0 }"
>
    <app-form-item
    name="plan"
    :itemRules="this.rules().plan"
    class=""

    :caption="$t('entities.story.bugtostory_form.details.plan')"
    uiStyle="DEFAULT"
    :labelWidth="100"
    :isShowCaption="true"
    :error="detailsModel.plan.error"
    :isEmptyCaption="false"
    labelPos="LEFT"
>
    
<dropdown-list 
    v-model="data.plan"
    :data="data"
    :context="context"
    :formState="formState"
    :viewparams="viewparams"
    :localContext='{ PRODUCT:"%product%" }' 
    :localParam='{ product:"%product%" }' 
    :disabled="detailsModel.plan.disabled"
    valueType="string"
    tag="CurProductPlan"
    codelistType="DYNAMIC"
    placeholder="请选择..."

></dropdown-list>
</app-form-item>

</i-col>
<i-col
    class="form-layout-container"
    v-show="detailsModel.source.visible"
    :style="{}"
    
    
    :lg="{ span: 24, offset: 0 }"
    :xl="{ span: 12, offset: 0 }"
>
    <app-form-item
    name="source"
    :itemRules="this.rules().source"
    class=""

    :caption="$t('entities.story.bugtostory_form.details.source')"
    uiStyle="DEFAULT"
    :labelWidth="75"
    :isShowCaption="true"
    :error="detailsModel.source.error"
    :isEmptyCaption="false"
    labelPos="LEFT"
>
    
<dropdown-list 
    v-model="data.source"
    :data="data"
    :context="context"
    :formState="formState"
    :viewparams="viewparams"
    :localContext='{ }' 
    :localParam='{ }' 
    :disabled="detailsModel.source.disabled"
    valueType="string"
    tag="Story__source"
    codelistType="STATIC"
    placeholder="请选择..."

></dropdown-list>
</app-form-item>

</i-col>
<i-col
    class="form-layout-container"
    v-show="detailsModel.sourcenote.visible"
    :style="{}"
    
    
    :lg="{ span: 24, offset: 0 }"
    :xl="{ span: 12, offset: 0 }"
>
    <app-form-item
    name="sourcenote"
    :itemRules="this.rules().sourcenote"
    class=""

    :caption="$t('entities.story.bugtostory_form.details.sourcenote')"
    uiStyle="DEFAULT"
    :labelWidth="100"
    :isShowCaption="true"
    :error="detailsModel.sourcenote.error"
    :isEmptyCaption="false"
    labelPos="LEFT"
>
    <input-box 
    v-model="data.sourcenote"  
    @enter="onEnter($event)"  
     unit=""  
    :disabled="detailsModel.sourcenote.disabled" 
    type='text' 
    style="">
</input-box>

</app-form-item>

</i-col>
<i-col
    class="form-layout-container"
    v-show="detailsModel.grouppanel1.visible"
    :style="{}"
    
    
    :lg="{ span: 24, offset: 0 }"
    
>
    <app-form-group
    :model="detailsModel.grouppanel1"
    layoutType="TABLE_24COL"
    titleStyle=""
    class=""
    :uiActionGroup="detailsModel.grouppanel1.uiActionGroup"
    @groupuiactionclick="groupUIActionClick($event)"
    :caption="$t('entities.story.bugtostory_form.details.grouppanel1')"
    :isShowCaption="false"
    uiStyle="DEFAULT"
    :titleBarCloseMode="0"
    :isInfoGroupMode="false"

>    
    <app-form-group-data-panel
        slot="dataInfoPanel"
        :model="detailsModel.grouppanel1"
        :data="data"
        :context="context"
        :viewparams="viewparams"
    ></app-form-group-data-panel>
    <row>
            
    </row>
</app-form-group>

</i-col>
<i-col
    class="form-layout-container"
    v-show="detailsModel.assignedto.visible"
    :style="{}"
    
    
    :lg="{ span: 24, offset: 0 }"
    :xl="{ span: 12, offset: 0 }"
>
    <app-form-item
    name="assignedto"
    :itemRules="this.rules().assignedto"
    class=""

    :caption="$t('entities.story.bugtostory_form.details.assignedto')"
    uiStyle="DEFAULT"
    :labelWidth="100"
    :isShowCaption="true"
    :error="detailsModel.assignedto.error"
    :isEmptyCaption="false"
    labelPos="LEFT"
>
    
<dropdown-list 
    v-model="data.assignedto"
    :data="data"
    :context="context"
    :formState="formState"
    :viewparams="viewparams"
    :localContext='{ }' 
    :localParam='{ }' 
    :disabled="detailsModel.assignedto.disabled"
    valueType="string"
    tag="UserRealNameProductTeam"
    codelistType="DYNAMIC"
    placeholder="请选择..."

></dropdown-list>
</app-form-item>

</i-col>
<i-col
    class="form-layout-container"
    v-show="detailsModel.neednotreview.visible"
    :style="{}"
    
    
    :lg="{ span: 24, offset: 0 }"
    :xl="{ span: 12, offset: 0 }"
>
    <app-form-item
    name="neednotreview"
    :itemRules="this.rules().neednotreview"
    class=""

    :caption="$t('entities.story.bugtostory_form.details.neednotreview')"
    uiStyle="DEFAULT"
    :labelWidth="10"
    :isShowCaption="true"
    :error="detailsModel.neednotreview.error"
    :isEmptyCaption="true"
    labelPos="LEFT"
>
    
<app-checkbox-list 
  v-model="data.neednotreview" 
  :data="data" 
  :context="context"
  :viewparams="viewparams" 
  :disabled="detailsModel.neednotreview.disabled" 
  :localContext ='{ }' 
  :localParam ='{ }' 
  tag='NeedNotReviewNew' 
  codelistType='STATIC' 
  mode=""
  name="neednotreview" 
  style="">
</app-checkbox-list>

</app-form-item>

</i-col>
<i-col
    class="form-layout-container"
    v-show="detailsModel.title.visible"
    :style="{}"
    
    
    :lg="{ span: 24, offset: 0 }"
    :xl="{ span: 12, offset: 0 }"
>
    <app-form-item
    name="title"
    :itemRules="this.rules().title"
    class=""

    :caption="$t('entities.story.bugtostory_form.details.title')"
    uiStyle="DEFAULT"
    :labelWidth="100"
    :isShowCaption="true"
    :error="detailsModel.title.error"
    :isEmptyCaption="false"
    labelPos="LEFT"
>
    <input-box 
    v-model="data.title"  
    @enter="onEnter($event)"  
     unit=""  
    :disabled="detailsModel.title.disabled" 
    type='text' 
    style="">
</input-box>

</app-form-item>

</i-col>
<i-col
    class="form-layout-container"
    v-show="detailsModel.pri.visible"
    :style="{}"
    
    
    :lg="{ span: 24, offset: 0 }"
    :xl="{ span: 4, offset: 0 }"
>
    <app-form-item
    name="pri"
    :itemRules="this.rules().pri"
    class=""

    :caption="$t('entities.story.bugtostory_form.details.pri')"
    uiStyle="DEFAULT"
    :labelWidth="60"
    :isShowCaption="true"
    :error="detailsModel.pri.error"
    :isEmptyCaption="false"
    labelPos="LEFT"
>
    
<dropdown-list 
    v-model="data.pri"
    :data="data"
    :context="context"
    :formState="formState"
    :viewparams="viewparams"
    :localContext='{ }' 
    :localParam='{ }' 
    :disabled="detailsModel.pri.disabled"
    valueType="number"
    tag="Story__pri"
    codelistType="STATIC"
    placeholder="请选择..."

></dropdown-list>
</app-form-item>

</i-col>
<i-col
    class="form-layout-container"
    v-show="detailsModel.storypoints.visible"
    :style="{}"
    
    
    :lg="{ span: 24, offset: 0 }"
    :xl="{ span: 4, offset: 0 }"
>
    <app-form-item
    name="storypoints"
    :itemRules="this.rules().storypoints"
    class=""

    :caption="$t('entities.story.bugtostory_form.details.storypoints')"
    uiStyle="DEFAULT"
    :labelWidth="60"
    :isShowCaption="true"
    :error="detailsModel.storypoints.error"
    :isEmptyCaption="false"
    labelPos="LEFT"
>
    
<dropdown-list 
    v-model="data.storypoints"
    :data="data"
    :context="context"
    :formState="formState"
    :viewparams="viewparams"
    :localContext='{ }' 
    :localParam='{ }' 
    :disabled="detailsModel.storypoints.disabled"
    valueType="string"
    tag="StoryPoints"
    codelistType="STATIC"
    placeholder="请选择..."

></dropdown-list>
</app-form-item>

</i-col>
<i-col
    class="form-layout-container"
    v-show="detailsModel.estimate.visible"
    :style="{}"
    
    
    :lg="{ span: 24, offset: 0 }"
    :xl="{ span: 4, offset: 0 }"
>
    <app-form-item
    name="estimate"
    :itemRules="this.rules().estimate"
    class=""

    :caption="$t('entities.story.bugtostory_form.details.estimate')"
    uiStyle="DEFAULT"
    :labelWidth="42"
    :isShowCaption="true"
    :error="detailsModel.estimate.error"
    :isEmptyCaption="false"
    labelPos="LEFT"
>
    <input-box 
    v-model="data.estimate"  
    @enter="onEnter($event)"  
     unit=""  
    :disabled="detailsModel.estimate.disabled" 
    type='number' 
    :precision="2"
    placeholder="工时"
    style="">
</input-box>

</app-form-item>

</i-col>
<i-col
    class="form-layout-container"
    v-show="detailsModel.spec.visible"
    :style="{}"
    
    
    :lg="{ span: 24, offset: 0 }"
    
>
    <app-form-item
    name="spec"
    :itemRules="this.rules().spec"
    class=""

    :caption="$t('entities.story.bugtostory_form.details.spec')"
    uiStyle="DEFAULT"
    :labelWidth="100"
    :isShowCaption="true"
    :error="detailsModel.spec.error"
    :isEmptyCaption="false"
    labelPos="LEFT"
>
    
<rich-text-editor 
    :formState="formState" 
    :value="data.spec"
    @change="(val) =>{this.data.spec =val}"
    @formitemvaluechange="onFormItemValueChange($event)" 
    :disabled="detailsModel.spec.disabled" 
    :data="JSON.stringify(this.data)"  
    name="spec" 
    :viewparams="viewparams"
    :context="context"
    :uploadparams='{objecttype:"story",version:"editor"}' 
    :exportparams='{objecttype:"story",version:"editor"}' 
    :templParams='{ account:"%srfloginname%", public:"0", type:"story" }' 
    style=""
></rich-text-editor>
</app-form-item>

</i-col>
<i-col
    class="form-layout-container"
    v-show="detailsModel.verify.visible"
    :style="{}"
    
    
    :lg="{ span: 24, offset: 0 }"
    
>
    <app-form-item
    name="verify"
    :itemRules="this.rules().verify"
    class=""

    :caption="$t('entities.story.bugtostory_form.details.verify')"
    uiStyle="DEFAULT"
    :labelWidth="100"
    :isShowCaption="true"
    :error="detailsModel.verify.error"
    :isEmptyCaption="false"
    labelPos="LEFT"
>
    <app-rich-text-editor
    :formState="formState"
    :value="data.verify"
    @change="(val) =>{this.data.verify =val}"
    @formitemvaluechange="onFormItemValueChange($event)"
    :disabled="detailsModel.verify.disabled"
    :data="JSON.stringify(this.data)"
    name="verify"
    :context="context"
    :viewparams="viewparams"
    :uploadparams='{objecttype:"story",version:"editor"}'
    :exportparams='{objecttype:"story",version:"editor"}'
    
    style=""
></app-rich-text-editor>

</app-form-item>

</i-col>
<i-col
    class="form-layout-container"
    v-show="detailsModel.mailto.visible"
    :style="{}"
    
    
    :lg="{ span: 18, offset: 0 }"
    :xl="{ span: 18, offset: 0 }"
>
    <app-form-item
    name="mailto"
    :itemRules="this.rules().mailto"
    class=""

    :caption="$t('entities.story.bugtostory_form.details.mailto')"
    uiStyle="DEFAULT"
    :labelWidth="100"
    :isShowCaption="true"
    :error="detailsModel.mailto.error"
    :isEmptyCaption="false"
    labelPos="LEFT"
>
    
<dropdown-list-mpicker 
  v-model="data.mailto"
  :data="data" 
  :context="context"
  :viewparams="viewparams" 
  :localContext ='{ }' 
  :localParam ='{ }' 
  :disabled="detailsModel.mailto.disabled"
  tag='UserRealName' 
  codelistType='DYNAMIC' 
  valueSeparator=","
  placeholder='请选择...' style="">
</dropdown-list-mpicker>

</app-form-item>

</i-col>
<i-col
    class="form-layout-container"
    v-show="detailsModel.mailtoconact.visible"
    :style="{}"
    
    
    :lg="{ span: 6, offset: 0 }"
    :xl="{ span: 6, offset: 0 }"
>
    <app-form-item
    name="mailtoconact"
    :itemRules="this.rules().mailtoconact"
    class=""

    :caption="$t('entities.story.bugtostory_form.details.mailtoconact')"
    uiStyle="DEFAULT"
    :labelWidth="10"
    :isShowCaption="true"
    :error="detailsModel.mailtoconact.error"
    :isEmptyCaption="true"
    labelPos="LEFT"
>
    
<app-picker  
    :formState="formState"
    :data="data"
    :context="context"
    :viewparams="viewparams"
    :localContext ='{ }' 
    :localParam ='{ }' 
    :disabled="detailsModel.mailtoconact.disabled"
    name="mailtoconact"
    deMajorField="listname"
    deKeyField="userlist"
    :service="service"
    :acParams="{ serviceName: 'UserContactService', interfaceName: 'FetchCurUSERCONTACT'}"
    valueitem="mailto"
    :value="data.mailtoconact"
    editortype="dropdown"
    style=""
    @formitemvaluechange="onFormItemValueChange($event)">
</app-picker>
</app-form-item>

</i-col>
<i-col
    class="form-layout-container"
    v-show="detailsModel.keywords.visible"
    :style="{}"
    
    
    :lg="{ span: 24, offset: 0 }"
    
>
    <app-form-item
    name="keywords"
    :itemRules="this.rules().keywords"
    class=""

    :caption="$t('entities.story.bugtostory_form.details.keywords')"
    uiStyle="DEFAULT"
    :labelWidth="100"
    :isShowCaption="true"
    :error="detailsModel.keywords.error"
    :isEmptyCaption="false"
    labelPos="LEFT"
>
    <input-box 
    v-model="data.keywords"  
    @enter="onEnter($event)"  
     unit=""  
    :disabled="detailsModel.keywords.disabled" 
    type='text' 
    style="">
</input-box>

</app-form-item>

</i-col>
    
    </row>
</app-form-group>

</i-col>


    </row>
</i-form>
